# 数据库 PyMYSQL，要区分好大小写，直接在pycharm安装
# pyyaml也是
"""
步骤：
    1.建立链接 conn=pymysql。connect()
    2. 建立游标 cursor = conn.cursor
    3. 查询 sursor.excute(sqlquery)
    4. 结果 cursor。fetch（）
    5.关闭
"""


from pymysql.cursors import DictCursor
import pymysql
# utf-8 => utf8
# host user,pwd

#  cursorclass=DictCursor   把查询出来的元祖数据，直接转换成列表字典
#建立链接
conn = pymysql.connect(host='localhost',port=3306,
                       user='root',password='1063378763',
                       charset='utf8',database='future',
                       cursorclass=DictCursor
                       )

# 2.游标。相当于发请求  初始化
cursor = conn.cursor()

# 3.执行sql语句  分号结尾
# todo 当sql语句中 有参数是 动态变化的，不要用format，会有sql注入
# 采用 arg参数 ，%s 占位符， 参数要是列表、元祖
mobile = '13413766443'
cursor.execute('SELECT * FROM menber WHERE mobilephone = %s ;',args=[mobile])

# 4.cursor 游标相当于 光标，文件操作， 共用一个光标，导致 当有读完第一条数据后，光标就往后移
#   todo 后面游标查询的 数据就是从 第二题开始，怎么解决？
# one
one = cursor.fetchone()

# 新建游标 查询,(保持独立性
cursor_other = conn.cursor()
cursor_other.execute('SELECT * FROM menber')
# all
# all = cursor_other.fetchall()

print(one)
# print(all)

# 查询完毕后要 关闭链接
cursor.close()
cursor_other.close()

conn.close()